package io.kiki.stack.http.feign.SpringMvcContract;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * Indicates which collection format should be used while processing the annotated method.
 */
@Target({ElementType.METHOD, ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
public @interface CollectionFormat {

    /**
     * Allows setting the {@link feign.CollectionFormat} to be used while processing the
     * annotated method.
     *
     * @return the {@link feign.CollectionFormat} to be used
     */
    io.kiki.stack.http.feign.CollectionFormat value();

}
